globals
//globals from GlobalsFunc:
constant boolean LIBRARY_GlobalsFunc=true
//endglobals from GlobalsFunc
//globals from YDTriggerSaveLoadSystem:
constant boolean LIBRARY_YDTriggerSaveLoadSystem=true
hashtable YDHT
hashtable YDLOC
//endglobals from YDTriggerSaveLoadSystem
rect gg_rct__________u= null
trigger gg_trg_script= null
trigger gg_trg_global= null
trigger gg_trg____________________001= null

trigger l__library_init

//JASSHelper struct globals:

endglobals


//library GlobalsFunc:
function GlobalUnit takes player id,integer unitid,real x,real y,real face,string creation returns unit
    call GetTriggerPlayer()
    return null
endfunction
function GlobalDestructable takes integer objectid,real x,real y,real face,real scale,integer variation,string creation returns destructable
    call GetTriggerPlayer()
    return null
endfunction
function GlobalDestructableZ takes integer objectid,real x,real y,real z,real face,real scale,integer variation,string creation returns destructable
    call GetTriggerPlayer()
    return null
endfunction
function GlobalDeadDestructable takes integer objectid,real x,real y,real face,real scale,integer variation,string creation returns destructable
    call GetTriggerPlayer()
    return null
endfunction
function GlobalDeadDestructableZ takes integer objectid,real x,real y,real z,real face,real scale,integer variation,string creation returns destructable
    call GetTriggerPlayer()
    return null
endfunction

//library GlobalsFunc ends
//library YDTriggerSaveLoadSystem:
    function YDTriggerSaveLoadSystem__Init takes nothing returns nothing
            set YDHT=InitHashtable()
        set YDLOC=InitHashtable()
    endfunction

//library YDTriggerSaveLoadSystem ends
//===========================================================================
//*
//*  Global variables
//*
//===========================================================================
function InitGlobals takes nothing returns nothing
 local integer i= 0
endfunction
function InitRandomGroups takes nothing returns nothing
 local integer curset
endfunction
function InitSounds takes nothing returns nothing
endfunction
function CreateDestructables takes nothing returns nothing
 local destructable d
 local trigger t
 local real life
endfunction
function CreateItems takes nothing returns nothing
 local integer itemID
endfunction
function CreateUnits takes nothing returns nothing
 local unit u
 local integer unitID
 local trigger t
 local real life
	set u=CreateUnit(Player(2), 'n00Z', 512.0, - 512.0, 270.0)
	set u=CreateUnit(Player(0), 'n00Z', - 512.0, 512.0, 270.0)
	set u=CreateUnit(Player(1), 'n00Z', 512.0, 512.0, 270.0)
	set u=CreateUnit(Player(3), 'n00Z', - 512.0, - 512.0, 270.0)
	set u=CreateUnit(Player(0), 'O001', - 4612.1, 4700.8, 264.4)
	set u=CreateUnit(Player(0), 'O002', - 4378.0, 4709.0, 270.4)
	set u=CreateUnit(Player(0), 'O003', - 4145.9, 4719.2, 256.8)
	set u=CreateUnit(Player(0), 'O004', - 4599.1, 4399.6, 269.8)
	set u=CreateUnit(Player(0), 'O006', - 4114.0, 4399.6, 278.3)
	set u=CreateUnit(Player(0), 'O005', - 4369.4, 4373.7, 274.6)
	set u=CreateUnit(Player(0), 'O007', - 4598.4, 4149.5, 283.8)
	set u=CreateUnit(Player(0), 'O008', - 4346.7, 4110.6, 272.3)
	set u=CreateUnit(Player(0), 'O009', - 4087.4, 4113.5, 274.6)
	set u=CreateUnit(Player(0), 'O00A', - 3843.4, 4131.4, 265.8)
	set u=CreateUnit(Player(0), 'O00B', - 3868.4, 4401.8, 276.4)
	set u=CreateUnit(Player(0), 'O00C', - 3854.4, 4675.3, 271.1)
	set u=CreateUnit(Player(0), 'O00D', - 4591.4, 3596.1, 268.9)
	set u=CreateUnit(Player(0), 'O00E', - 4347.4, 3583.9, 281.5)
	set u=CreateUnit(Player(0), 'O00F', - 4092.0, 3604.8, 277.9)
	set u=CreateUnit(Player(0), 'O00G', - 3815.8, 3575.7, 276.0)
	set u=CreateUnit(Player(0), 'O00H', - 4569.6, 3267.1, 271.0)
	set u=CreateUnit(Player(0), 'O00I', - 4314.1, 3252.4, 276.7)
	set u=CreateUnit(Player(0), 'O00J', - 4057.0, 3291.7, 279.4)
	set u=CreateUnit(Player(0), 'O00K', - 3816.9, 3297.4, 281.2)
	set u=CreateUnit(Player(0), 'O00M', - 4551.9, 2988.2, 276.7)
	set u=CreateUnit(Player(0), 'O00L', - 4280.7, 3006.1, 277.7)
	set u=CreateUnit(Player(0), 'O00O', - 4031.0, 3025.2, 270.9)
	set u=CreateUnit(Player(0), 'O00N', - 3789.9, 3027.8, 271.6)
	set u=CreateUnit(Player(0), 'O00P', - 4696.8, 2369.0, 275.1)
	set u=CreateUnit(Player(0), 'O00R', - 4446.0, 2100.1, 273.7)
	set u=CreateUnit(Player(0), 'O00Q', - 4705.5, 2103.1, 268.9)
	set u=CreateUnit(Player(0), 'O00S', - 4448.9, 2371.7, 273.4)
	set u=CreateUnit(Player(0), 'O00T', - 4717.6, 1837.1, 275.3)
	set u=CreateUnit(Player(0), 'O00U', - 4444.7, 1850.1, 284.4)
	set u=CreateUnit(Player(0), 'O00V', - 3852.2, 2319.6, 263.8)
	set u=CreateUnit(Player(0), 'O00W', - 3574.4, 2333.5, 272.8)
	set u=CreateUnit(Player(0), 'O00X', - 3856.6, 2036.5, 278.6)
	set u=CreateUnit(Player(0), 'O00Y', - 3580.6, 2047.1, 267.5)
	set u=CreateUnit(Player(0), 'O00Z', - 3849.6, 1792.2, 269.2)
	set u=CreateUnit(Player(0), 'O010', - 3585.3, 1816.7, 273.6)
	set u=CreateUnit(Player(0), 'n00C', - 1536.0, 1536.0, 270.0)
	set u=CreateUnit(Player(3), 'n00C', - 1536.0, - 1536.0, 270.0)
	set u=CreateUnit(Player(2), 'n00C', 1536.0, - 1536.0, 270.0)
	set u=CreateUnit(Player(1), 'n00C', 1536.0, 1536.0, 270.0)
	set u=CreateUnit(Player(11), 'n006', 0.0, 4608.0, 270.0)
	set u=CreateUnit(Player(11), 'n009', 0.0, - 4608.0, 270.0)
	set u=CreateUnit(Player(0), 'n00G', - 640.0, 1408.0, 270.0)
	set u=CreateUnit(Player(0), 'n00F', - 356.6, 1238.0, 261.6)
	set u=CreateUnit(Player(0), 'n00E', - 247.0, 272.5, 81.3)
	set u=CreateUnit(Player(1), 'n00E', 251.8, 259.0, 81.3)
	set u=CreateUnit(Player(3), 'n00E', - 255.5, - 253.0, 81.3)
	set u=CreateUnit(Player(2), 'n00E', 259.3, - 261.7, 81.3)
	set u=CreateUnit(Player(0), 'n002', - 400.5, 1512.5, 169.3)
endfunction
function CreateRegions takes nothing returns nothing
 local weathereffect we
	set gg_rct__________u=Rect(- 3072, - 3104, 3072, 3072)
endfunction
function CreateCameras takes nothing returns nothing
endfunction
//TESH.scrollpos=0
//TESH.alwaysfold=0
//TESH.scrollpos=0
//TESH.alwaysfold=0
function GetPlayerName2 takes player whichPlayer returns string
local string name= GetPlayerName(whichPlayer) + "&"
return SubString(name, 0, StringLength(name) - 1)
endfunction 
function TriggerClearActions2 takes trigger thandle returns nothing
call TriggerClearActions(thandle)
endfunction
function InitializePlugin takes nothing returns integer
call ExecuteFunc("DoNothing")
call StartCampaignAI(Player(PLAYER_NEUTRAL_AGGRESSIVE), "callback")
call ExecuteFunc("DoNothing")
call AbilityId("exec-lua:main")
return 0
endfunction
    
//#define SetMapName(s) PlayMusic("Lion.mp3") YDNL call SetMapName(s)
//TESH.scrollpos=1
//TESH.alwaysfold=0
//===========================================================================
// Trigger: 未命名触发器 001
//自定义jass生成器 作者：007 
//有bug到魔兽地图编辑器吧 @w4454962 
//bug反馈群：724829943   lua 技术交流3群：710331384
//===========================================================================
function Trig____________________001Actions takes nothing returns nothing
endfunction
//===========================================================================
function InitTrig____________________001 takes nothing returns nothing
	set gg_trg____________________001=CreateTrigger()
	call DoNothing()
	call TriggerAddAction(gg_trg____________________001, function Trig____________________001Actions)
endfunction
//===========================================================================
function InitCustomTriggers takes nothing returns nothing
	call InitTrig____________________001()
endfunction
//===========================================================================
function RunInitializationTriggers takes nothing returns nothing
endfunction
function InitCustomPlayerSlots takes nothing returns nothing
	call SetPlayerStartLocation(Player(0), 0)
	call ForcePlayerStartLocation(Player(0), 0)
	call SetPlayerColor(Player(0), ConvertPlayerColor(0))
	call SetPlayerRacePreference(Player(0), RACE_PREF_HUMAN)
	call SetPlayerRaceSelectable(Player(0), false)
	call SetPlayerController(Player(0), MAP_CONTROL_USER)
	call SetPlayerStartLocation(Player(1), 1)
	call ForcePlayerStartLocation(Player(1), 1)
	call SetPlayerColor(Player(1), ConvertPlayerColor(1))
	call SetPlayerRacePreference(Player(1), RACE_PREF_HUMAN)
	call SetPlayerRaceSelectable(Player(1), false)
	call SetPlayerController(Player(1), MAP_CONTROL_USER)
	call SetPlayerStartLocation(Player(2), 2)
	call ForcePlayerStartLocation(Player(2), 2)
	call SetPlayerColor(Player(2), ConvertPlayerColor(2))
	call SetPlayerRacePreference(Player(2), RACE_PREF_HUMAN)
	call SetPlayerRaceSelectable(Player(2), false)
	call SetPlayerController(Player(2), MAP_CONTROL_USER)
	call SetPlayerStartLocation(Player(3), 3)
	call ForcePlayerStartLocation(Player(3), 3)
	call SetPlayerColor(Player(3), ConvertPlayerColor(3))
	call SetPlayerRacePreference(Player(3), RACE_PREF_HUMAN)
	call SetPlayerRaceSelectable(Player(3), false)
	call SetPlayerController(Player(3), MAP_CONTROL_USER)
	call SetPlayerStartLocation(Player(4), 4)
	call ForcePlayerStartLocation(Player(4), 4)
	call SetPlayerColor(Player(4), ConvertPlayerColor(4))
	call SetPlayerRacePreference(Player(4), RACE_PREF_HUMAN)
	call SetPlayerRaceSelectable(Player(4), false)
	call SetPlayerController(Player(4), MAP_CONTROL_COMPUTER)
	call SetPlayerStartLocation(Player(11), 5)
	call ForcePlayerStartLocation(Player(11), 5)
	call SetPlayerColor(Player(11), ConvertPlayerColor(11))
	call SetPlayerRacePreference(Player(11), RACE_PREF_NIGHTELF)
	call SetPlayerRaceSelectable(Player(11), false)
	call SetPlayerController(Player(11), MAP_CONTROL_COMPUTER)
endfunction
function InitCustomTeams takes nothing returns nothing
	// Force: TRIGSTR_007
	call SetPlayerTeam(Player(0), 0)
	call SetPlayerTeam(Player(1), 0)
	call SetPlayerTeam(Player(2), 0)
	call SetPlayerTeam(Player(3), 0)
	call SetPlayerTeam(Player(4), 0)
	call SetPlayerAllianceStateAllyBJ(Player(0), Player(1), true)
	call SetPlayerAllianceStateVisionBJ(Player(0), Player(1), true)
	call SetPlayerAllianceStateAllyBJ(Player(0), Player(2), true)
	call SetPlayerAllianceStateVisionBJ(Player(0), Player(2), true)
	call SetPlayerAllianceStateAllyBJ(Player(0), Player(3), true)
	call SetPlayerAllianceStateVisionBJ(Player(0), Player(3), true)
	call SetPlayerAllianceStateAllyBJ(Player(0), Player(4), true)
	call SetPlayerAllianceStateVisionBJ(Player(0), Player(4), true)
	call SetPlayerAllianceStateAllyBJ(Player(1), Player(0), true)
	call SetPlayerAllianceStateVisionBJ(Player(1), Player(0), true)
	call SetPlayerAllianceStateAllyBJ(Player(1), Player(2), true)
	call SetPlayerAllianceStateVisionBJ(Player(1), Player(2), true)
	call SetPlayerAllianceStateAllyBJ(Player(1), Player(3), true)
	call SetPlayerAllianceStateVisionBJ(Player(1), Player(3), true)
	call SetPlayerAllianceStateAllyBJ(Player(1), Player(4), true)
	call SetPlayerAllianceStateVisionBJ(Player(1), Player(4), true)
	call SetPlayerAllianceStateAllyBJ(Player(2), Player(0), true)
	call SetPlayerAllianceStateVisionBJ(Player(2), Player(0), true)
	call SetPlayerAllianceStateAllyBJ(Player(2), Player(1), true)
	call SetPlayerAllianceStateVisionBJ(Player(2), Player(1), true)
	call SetPlayerAllianceStateAllyBJ(Player(2), Player(3), true)
	call SetPlayerAllianceStateVisionBJ(Player(2), Player(3), true)
	call SetPlayerAllianceStateAllyBJ(Player(2), Player(4), true)
	call SetPlayerAllianceStateVisionBJ(Player(2), Player(4), true)
	call SetPlayerAllianceStateAllyBJ(Player(3), Player(0), true)
	call SetPlayerAllianceStateVisionBJ(Player(3), Player(0), true)
	call SetPlayerAllianceStateAllyBJ(Player(3), Player(1), true)
	call SetPlayerAllianceStateVisionBJ(Player(3), Player(1), true)
	call SetPlayerAllianceStateAllyBJ(Player(3), Player(2), true)
	call SetPlayerAllianceStateVisionBJ(Player(3), Player(2), true)
	call SetPlayerAllianceStateAllyBJ(Player(3), Player(4), true)
	call SetPlayerAllianceStateVisionBJ(Player(3), Player(4), true)
	call SetPlayerAllianceStateAllyBJ(Player(4), Player(0), true)
	call SetPlayerAllianceStateVisionBJ(Player(4), Player(0), true)
	call SetPlayerAllianceStateAllyBJ(Player(4), Player(1), true)
	call SetPlayerAllianceStateVisionBJ(Player(4), Player(1), true)
	call SetPlayerAllianceStateAllyBJ(Player(4), Player(2), true)
	call SetPlayerAllianceStateVisionBJ(Player(4), Player(2), true)
	call SetPlayerAllianceStateAllyBJ(Player(4), Player(3), true)
	call SetPlayerAllianceStateVisionBJ(Player(4), Player(3), true)
	// Force: TRIGSTR_008
	call SetPlayerTeam(Player(11), 1)
endfunction
function InitAllyPriorities takes nothing returns nothing
	call SetStartLocPrioCount(0, 2)
	call SetStartLocPrio(0, 0, 2, MAP_LOC_PRIO_HIGH)
	call SetStartLocPrio(0, 1, 3, MAP_LOC_PRIO_HIGH)
	call SetStartLocPrioCount(1, 2)
	call SetStartLocPrio(1, 0, 0, MAP_LOC_PRIO_LOW)
	call SetStartLocPrio(1, 1, 3, MAP_LOC_PRIO_HIGH)
	call SetStartLocPrioCount(2, 2)
	call SetStartLocPrio(2, 0, 0, MAP_LOC_PRIO_HIGH)
	call SetStartLocPrio(2, 1, 3, MAP_LOC_PRIO_HIGH)
	call SetStartLocPrioCount(3, 2)
	call SetStartLocPrio(3, 0, 0, MAP_LOC_PRIO_HIGH)
	call SetStartLocPrio(3, 1, 2, MAP_LOC_PRIO_HIGH)
endfunction
//===========================================================================
//*
//*  Main Initialization
//*
//===========================================================================
function main takes nothing returns nothing
	call SetCameraBounds(- 7424.000000 + GetCameraMargin(CAMERA_MARGIN_LEFT), - 7680.000000 + GetCameraMargin(CAMERA_MARGIN_BOTTOM), 7424.000000 - GetCameraMargin(CAMERA_MARGIN_RIGHT), 7168.000000 - GetCameraMargin(CAMERA_MARGIN_TOP), - 7424.000000 + GetCameraMargin(CAMERA_MARGIN_LEFT), 7168.000000 - GetCameraMargin(CAMERA_MARGIN_TOP), 7424.000000 - GetCameraMargin(CAMERA_MARGIN_RIGHT), - 7680.000000 + GetCameraMargin(CAMERA_MARGIN_BOTTOM))
	call SetDayNightModels("Environment\\DNC\\DNCLordaeron\\DNCLordaeronTerrain\\DNCLordaeronTerrain.mdl", "Environment\\DNC\\DNCLordaeron\\DNCLordaeronUnit\\DNCLordaeronUnit.mdl")
	call NewSoundEnvironment("Default")
	call SetAmbientDaySound("LordaeronSummerDay")
	call SetAmbientNightSound("LordaeronSummerNight")
	call SetMapMusic("Music", true, 0)
 call InitializePlugin()
	call InitSounds()
	call InitRandomGroups()
	call CreateRegions()
	call CreateCameras()
	call CreateDestructables()
	call CreateItems()
	call CreateUnits()
	call InitBlizzard()

call ExecuteFunc("YDTriggerSaveLoadSystem__Init")

	call InitGlobals()
	call InitCustomTriggers()
	call RunInitializationTriggers()
endfunction
//===========================================================================
//*
//*  Map Configuration
//*
//===========================================================================
function config takes nothing returns nothing
	call SetMapName("只是另外一张魔兽争霸的地图")
	call SetMapDescription("没有说明")
	call SetPlayers(6)
	call SetTeams(6)
	call SetGamePlacement(MAP_PLACEMENT_TEAMS_TOGETHER)
	call DefineStartLocation(0, 5760.000000, - 4096.000000)
	call DefineStartLocation(1, - 2112.000000, - 1920.000000)
	call DefineStartLocation(2, 7104.000000, - 704.000000)
	call DefineStartLocation(3, 3584.000000, - 1024.000000)
	call DefineStartLocation(4, 2944.000000, 4224.000000)
	call DefineStartLocation(5, 64.000000, - 1344.000000)
	call InitCustomPlayerSlots()
	call InitCustomTeams()
	call InitAllyPriorities()
endfunction




//Struct method generated initializers/callers:

